//
//  works.hpp
//  TikTok
//
//  Created by 吴尚远 on 2022/5/11.
//

#pragma once

#include <iostream>
#include <string>
#include <stdio.h>
#include "works.h"
#include "date.h"
#include <fstream>
#define FILE_WORK "FILE_WORK.txt"
using namespace std;
class manager
{
public:
    
    manager();
    ~manager();
    
    //判断文件是否为空
    bool m_FileIsEmpty;
    //统计文件中人数
    int get_EmpNum();
    //初始化
    void init_Emp();
    //保存文件
    void save();
    //清空文件
    void Clean_File();
    
    //作品数量
    int w_num;
    //作品指针
    work * w_array;
    
    //按照名称来查找作品
    void find_by_name();
    //按照时间来查找作品
    void find_works();
    
    //添加作品
    void Add_work();
    
    //删除作品
    void Del_work();
    //按照作品名字判断作品是否存在，若存在，返回作品在数组中的位置，若不存在，则返回-1
    int IsExist(string del_name);
    
    //作品列表的部分展示（隐藏）
    void show_privacy();
    //作品列表的部分显示（未隐藏）
    void sub_show();
    //全部展示
    void show();
    
    //按照作品大小排序
    void rank_size(int num, work * wor);
    //按照作品名排序
    void rank_name(int num, work * wor);
    //按照作品被浏览量排序
    void rank_views(int num, work * wor);
    //按照作品被点赞量排序
    void rank_likes(int num, work * wor);
    //按照作品被评论量排序
    void rank_comments(int num, work * wor);
    //按照作品时间排序
    void rank_time(int num, work * wor);
    
    //菜单函数
    void menu();
};
